package com.ht.pms.core.dao;

import com.ht.pms.core.dto.DeleteSalaryReq;
import com.ht.pms.core.dto.UpdateSalaryReq;
import com.ht.pms.core.dto.dict.DictParamsDto;
import com.ht.pms.core.dto.tempalte.Template;
import com.ht.pms.core.dto.upload.UpLoadTemp;
import com.ht.pms.core.dto.upload.UploadFile;

import java.util.List;
import java.util.Map;

/**
 * @author:喻尊龙
 * @date: 2018/4/13
 */
public interface SalarySheetManagementDao {

    List<Map<String,Object>> getSalaryColum(String templateCode);

    List<Map<String,Object>> getSalaryTableName(String templateCode);

    List<Map<String,Object>> getData(String sql);

    Map<String, Object> getCount(String sql);

    void deleteSalaryData(DeleteSalaryReq req);

    int updateSalaryData(UpdateSalaryReq req);

    DictParamsDto getDictParamsDto(String field);

    List<UploadFile> getUploadFiles(String templateCode, String time);

    UpLoadTemp getUpLoadTemp(String templateCode,String time);

    int updataUploadFileLogState(String fileId,String batchCode,String dictCode,String jobCode);

    int queryNotRepairLogCount(String fileId);

    int updataBase(String batchCode,String fileId);

    UploadFile getUploadFile(String templateCode,String time);

    int updateFinalState(String batchCode,String templateCode);

    UploadFile getUploadFileByBatchCode(String batchCode);


    List<Template> findTemp(String tempCode);

    List<Map<String,Object>> getPmsListSendData(String tableName,String batchCode);

    int countPmsListSendData(String tableName,String batchCode);
}
